package com.xinqi.modules.sys.complaint.dto.req;

import com.xinqi.common.green.annotation.Text;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.io.Serializable;

/**
 * 聊天投诉表-请求对象-处理
 *
 * @author: yyzhenn
 * @date: 2023/04/23
 */
@Data
@Schema(description = "聊天投诉表-请求对象-处理")
public class ComplaintHandlingDTO implements Serializable {
    @NotNull(message = "{complaint.id.not.blank}")
    @Schema(description = "主键", example = "100001")
    private Long id;
    /**
     * 投诉处理规则ID
     */
    @NotNull(message = "{complaint.configId.not.blank}")
    @Schema(description = "投诉处理规则ID", example = "")
    private Long configId;
    /**
     * 回复用户
     */
    @Text
    @Size(min = 0, max = 100, message = "{complaint.reply.length.valid}")
    @Schema(description = "回复用户", example = "")
    private String reply;
    /**
     * 用户提示信息
     */
    @Text
    @NotEmpty(message = "{complaint.reminderInformation.not.blank}")
    @Size(min = 0, max = 100, message = "{complaint.reminderInformation.length.valid}")
    @Schema(description = "用户提示信息", example = "")
    private String reminderInformation;

    @Schema(title = "操作用户ID(内部流转参数，不对外)", hidden = true)
    private Long operationUserId;
}
